package com.richpay.basejava.base16;


import java.util.Arrays;

/**
 * String的操作：
 * A:添加
 * <p>
 * B:修改
 * String replace(char oldChar, char newChar):使用newChar替换oldChar
 * String substring(int beginIndex)：返回从指定索引开始到字符串结尾的字符串
 * String substring(int beginIndex, int endIndex):返回指定区间的字符串
 * <p>
 * C:删除
 * <p>
 * D:获取
 * char charAt(int index):获取指定索引位的字符
 * int indexOf(int ch):返回字符在当前字符串中第一次出现的索引位
 * int indexOf(int ch, int fromIndex):从fromIndex开始往后搜索字符ch 第一次在当前字符串中出现的索引位
 * int indexOf(String str):获取字符串str第一次在当前字符串中出现的索引位
 * int indexOf(String str, int fromIndex):从fromIndex开始往后搜索str 第一次在当前字符串中出现的索引位
 * CharSequence subSequence(int beginIndex, int endIndex):根据指定的区间返回 CharSequence类型的对象
 * char[] toCharArray():将当前字符串转化成字符数组 String trim():获取去掉前后空格后的字符串
 * <p>
 * E:判断
 * int compareTo(String anotherString):判断两个字符串的大小或者相等
 * int compareToIgnoreCase(String str):  按字典顺序比较两个字符串，不考虑大小写。
 * boolean contains(CharSequence s)：判断给定的s在不在当前字符串中
 * boolean startsWith(String prefix)：判断当前字符串是不是以prefix开头的
 * boolean endsWith(String suffix)：判断当前字符串是不是以 suffix结尾的.
 * boolean equals(Object anObject):比较两个对象的内容是否相同
 * boolean equalsIgnoreCase(String anotherString):忽略大小写后比较字符串的内容是否相同
 * boolean isEmpty():判断当前字符串是否为空(当且仅当 length() 为 0 时返回 true)
 * int lastIndexOf(String str):从后往前搜索str第一次在当前字符串中出现的索引位
 * <p>
 * F:合并
 * String concat(String str)
 */
public class StringUsageDemo {
    public static void main(String[] args) {
        String str1 = "admin#123#北京";
        int index = str1.indexOf('#');
        System.out.println("index=" + index);

        String[] strArray1 = str1.split("#");//以#为分隔符将字符串分割成 admin、123和北京 分别赋值给strArray1[0]、strArray1[1]和strArray1[2]
        System.out.println(Arrays.toString(strArray1));

        String str2 = "admin*123*北京";
        String[] strArray2 = str2.split("\\*");//* 是正则表达式中的元字符，必须进行转义成普通的*才行在 * 前加 \\
        System.out.println(Arrays.toString(strArray2));

    }
}
